Урок 25 – Добавляем врага

Для начала сделаем так, чтобы цвет фона сцены в GDevelop был таким же как фон ф нашей игре. Открываем фон игры через Piskel и с помощью пипетки узнаем какой цвет у игры.

Далее в Piskel меняем цвет.

Так как уровень у нас будет маленьким, то параллакс-фон нам не сильно нужен, давайте избавимся от него.

Далее удалим слои и переместим объект в этих слоях на базовый слой.

У вас может пропасть игрок со сцены. Чтобы этого не произошло, просто назначите ему Z-index 200.

Давайте добавим теперь новый объект.

Располагаем новый объект так:

Чтобы верхний объект отразить в другую сторону мы можем просто переключить анимацию в ее свойствах.

Достраиваем уровень.

Не забудем новым объектам указать физические свойства.

Добавим врага.

Перенесем объект на сцену.

Добавим этому врагу поведение.

Далее зациклим анимацию и зададим скорость.

Теперь добавим события для врага. Но есть проблема – когда мы создадим событие для врага, оно будет работать только в этой сцене, в новой сцене нам придется настраивать все заново. Чтобы этого избежать мы можем создать глобальное событие.

Запускаем это событие и выбираем нашу сцену. Далее снова переходим в наши события, создаем группу Enemies, и затем добавляем ссылку на наше глобальное событие.

Теперь создаем группу наших врагов.

Добавим еще объекты.

И разместим их на сцене так.

В события я добавлю такой код. Думаю здесь, если внимательно посмотреть, то все понятно.

Проверяем, должно все заработать).

Добавляем следующего врага.

В поведении добавляем новому объекту поведение Platformer Character, только отключаем управвление по умолчанию.

Добавляем нашего врага в сцену.

И добавим этот новый объект в группу Enemies.

Добавим в события следующий код.

Т.е. сперва мы отключили поведение платформера у нашего объекта, затем когда переменная walk = 1 мы придали силу объекту направленную на право, а когда walk = 0 сила будет направлена влево.

Также в действии Add Force вы можете увидеть переключатель Instant и Permament. При Instant сила действует 1 кадр (или каждый кадр, если у нас не установлено в условии At the beginning of the scene, или другое условие, которое работает 1 кадр), A Permament будет действовать постоянно пока не примените действие Stop the Object. И если у вас в событии не установлено At the beginning of the scene (или условие которое работает 1 кадр), то с каждым кадром сила будет перемножаться и движение ускоряться.

Далее добавим третьего врага.

Далее добавляем ему поведение платформера, убирая управление по умолчанию, добавляем в группу Enemies, и также добавляем на сцену.

После просмотра я решил, что анимацию надо замедлить до 3 кадров в секунду.

Добавляем еще одного врага.

Только чтобы анимация была относительно центра, я переместил опорные (или исходные) точки у всех кадров анимации в центр. Центральная точка нужна для привязки каких-либо событий, появления огня в этом месте и т.д. Можно создавать свои точки.

Добавляю его на сцену.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *